Alma - 0 : An Imperative Language that Supports Declarative
نویسنده
چکیده
We describe here an implemented small programming language, called Alma-0, that augments the expressive power of imperative programming by a limited number of features inspired by the logic programming paradigm. These additions encourage declarative programming and make it a more attractive vehicle for problems that involve search. We illustrate the use of Alma-0 by presenting solutions to a number of classical problems, including search, STRIPS planning, knapsack, and 8 queens. These solutions are substantially simpler than their counterparts written in the imperative or in the logic programming style and can be used for di erent purposes without any modi cation. We also discuss here the implementation of Alma-0 and an operational, executable, semantics of a large subset of the language. 1991 Mathematics Subject Classi cation: 68N05, 68N15 1991 Computing Reviews Classi cation System: D.3.2,F.3.3, I.2.8
منابع مشابه
Programming in Alma-0, or Imperative and Declarative Programming Reconciled
In [Apt et al., 1998] we introduced the imperative programming language Alma-0 that supports declarative programming. In this paper we illustrate the hybrid programming style of Alma-0 by means of various examples that complement those presented in [Apt et al., 1998]. The presented Alma-0 programs illustrate the versatility of the language and show that “don’t know” nondeterminism can be natura...
متن کاملAlma-0: an Imperative Language That Supports Declarative Programming Alma-0: an Imperative Language That Supports Declarative Programming
We describe here an implemented small programming language, called Alma-0, that augments the expressive power of imperative programming by a limited number of features inspired by the logic programming paradigm. These additions encourage declarative programming and make it a more attractive vehicle for problems that involve search. We illustrate the use of Alma-0 by presenting solutions to a nu...
متن کاملIntegrating Constraints into an Imperative Programming Language
We investigate here how to integrate constraints directly into the imperative programming paradigm, as \\rst class citizens" and not by means of an external library. To this end we provide a systematic account of the issues that arise. In particular, we discuss the role of the logical and customary variables, the interaction between the constraint store and the program, and the need for lists. ...
متن کاملThe Alma Project , or How First - Order LogicCan Help Us in Imperative
The aim of the Alma project is the design of a strongly typed constraint programming language that combines the advantages of logic and imperative programming. The rst stage of the project was the design and implementation of Alma-0, a small programming language that provides a support for declarative programming within the imperative programming framework. It is obtained by extending a subset ...
متن کاملThe Alma Project, or How First-Order Logic Can Help Us in Imperative Programming
The aim of the Alma project is the design of a strongly typed constraint programming language that combines the advantages of logic and imperative programming. The first stage of the project was the design and implementation of Alma0, a small programming language that provides a support for declarative programming within the imperative programming framework. It is obtained by extending a subset...
متن کامل